User station supporting a communication service and method for selecting duplex mode for the service

ABSTRACT

Embodiments of a system and method for selecting a duplex mode for a service operating in a Wireless Network are generally described herein. In some embodiments, a mobile device may receive one or more traffic packets related to an establishment or a re-establishment of a service at the mobile device, and may select a duplex mode for the service. In some embodiments, the mobile device may be an IEEE 802.11 Station (STA). The mobile device may be configured to select full-duplex as the duplex mode when a delay requirement associated with the service is less than a predetermined delay threshold and when a calibration overhead associated with the mobile device or the service is less than a predetermined calibration overhead threshold. In addition, the mobile device may also be configured to select time-division duplex (TDD) or frequency-division duplex (FDD) as the duplex mode when the delay requirement is less than the delay threshold and when the calibration overhead is less than the calibration overhead threshold.

TECHNICAL FIELD

Embodiments pertain to wireless communications. Some embodiments relateto wireless networks or mobile devices configured to operate inaccordance with versions of the IEEE 802.11 or 3GPP standards. Someembodiments pertain to wireless networks or mobile devices that supportbi-directional communication services.

BACKGROUND

A mobile device may be capable of supporting various bi-directional dataservices that enable it to receive and send data to other devices orcomponents. Due to their nature or functionality, these services mayhave different requirements for typical parameters like the data rateand latency. For example, a text messaging service may be considered alow data rate service that does not require low latency while areal-time gaming service, in contrast, likely requires a much higherdata rate and a very low latency. Such requirements can be importantfactors in the choice of the duplex mode for the service, which defineshow the device utilizes important system resources, such as frequencyspectrum and time, in order to both receive and send data related to theservice.

Some of the well known duplex modes like time-division duplex (TDD) andfrequency-division duplex (FDD) may be used in these data services. Theservices may also use another technique called “full-duplex,” which hasreceived considerable attention recently due to its potential to provideimproved latency and data rate performance in comparison to other duplexmodes. However, full-duplex also may cause issues or problems, includinginterfering with neighboring devices in close proximity. In addition,the use of full-duplex may negatively impact the battery life of themobile device and may require an unreasonable amount ofself-calibration. Thus there are general needs for systems and methodsfor choosing to use full-duplex for a service, and in general forselecting a duplex mode for the service.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a functional diagram of a user station (STA) in accordancewith some embodiments;

FIG. 2 is a block diagram of a system that supports mobile devices oraccess points in accordance with some embodiments;

FIG. 3 illustrates the operation of a method for selecting a duplex modein accordance with some embodiments; and

FIG. 4 illustrates the operation of another method for selecting aduplex mode in accordance with some embodiments.

DETAILED DESCRIPTION

The following description and the drawings sufficiently illustratespecific embodiments to enable those skilled in the art to practicethem. Other embodiments may incorporate structural, logical, electrical,process, and other changes. Portions and features of some embodimentsmay be included in, or substituted for, those of other embodiments.Embodiments set forth in the claims encompass all available equivalentsof those claims.

In some embodiments, mobile devices described herein may be part of aportable wireless communication device, such as a personal digitalassistant (PDA), a laptop or portable computer with wirelesscommunication capability, a web tablet, a wireless telephone, asmartphone, a wireless headset, a pager, an instant messaging device, adigital camera, an access point, a television, a medical device (e.g., aheart rate monitor, a blood pressure monitor, etc.), or other devicethat may receive and/or transmit information wirelessly. In someembodiments, the mobile device can be a user station (STA) configured tooperate in accordance with at least one version of the IEEE 802.11standard. In some embodiments, the mobile device may include one or moreof a keyboard, a display, a non-volatile memory port, multiple antennas,a graphics processor, an application processor, speakers, and othermobile device elements. The display may be an LCD screen including atouch screen.

FIG. 1 is a block diagram of a mobile device/user station (STA) inaccordance with some embodiments. The STA 100 may include physical layercircuitry 102 for transmitting and receiving signals to and from AccessPoints (AP's), other STA's or other devices using one or more antennas101. STA 100 may also include medium access control layer (MAC)circuitry 104 for controlling access to the wireless medium. STA 100 mayalso include processing circuitry 106 and memory 108 arranged to performthe operations described herein.

The antennas 101 may comprise one or more directional or omnidirectionalantennas, including, for example, dipole antennas, monopole antennas,patch antennas, loop antennas, microstrip antennas or other types ofantennas suitable for transmission of RF signals. In some multiple-inputmultiple-output (MIMO) embodiments, the antennas 101 may be effectivelyseparated to take advantage of spatial diversity and the differentchannel characteristics that may result.

Although the STA 100 is illustrated as having several separatefunctional elements, one or more of the functional elements may becombined and may be implemented by combinations of software-configuredelements, such as processing elements including digital signalprocessors (DSPs), and/or other hardware elements. For example, someelements may comprise one or more microprocessors, DSPs,field-programmable gate arrays (FPGAs), application specific integratedcircuits (ASICs), radio-frequency integrated circuits (RFICs) andcombinations of various hardware and logic circuitry for performing atleast the functions described herein. In some embodiments, thefunctional elements may refer to one or more processes operating on oneor more processing elements.

Embodiments may be implemented in one or a combination of hardware,firmware and software. Embodiments may also be implemented asinstructions stored on a computer-readable storage device, which may beread and executed by at least one processor to perform the operationsdescribed herein. A computer-readable storage device may include anynon-transitory mechanism for storing information in a form readable by amachine (e.g., a computer). For example, a computer-readable storagedevice may include read-only memory (ROM), random-access memory (RAM),magnetic disk storage media, optical storage media, flash-memorydevices, and other storage devices and media. Some embodiments mayinclude one or more processors and may be configured with instructionsstored on a computer-readable storage device.

In accordance with embodiments, the STA 100 may be configured to operatein an IEEE 802.11 network in accordance with a duplex mode. In theseembodiments, the user station 100 may be configured to receive one ormore traffic packets related to an establishment or a re-establishmentof the service at the STA 100. When a delay requirement associated withthe service is less than a predetermined delay threshold, the userstation 100 may select full-duplex as the duplex mode when a calibrationoverhead associated with the STA 100 or the service is less than apredetermined calibration overhead threshold, and may selecttime-division duplex (TDD) or frequency-division duplex (FDD) as theduplex mode when the calibration overhead is not less than thecalibration overhead threshold. These embodiments are described in moredetail below. It is noted here that for the sake of illustration, someof the disclosed examples focus on devices operating in an IEEE 802.11network. However, the subject matter disclosed is not limited to thosedevices or to IEEE 802.11 networks, and may be applied to other suitabletypes of devices, wireless networks or systems using any suitable radiointerface, which may be different from the radio interface(s) associatedwith IEEE 802.11 specifications. As an example, methods and subjectmatter disclosed herein may be applied to devices and networksconfigured to operate according to 3GPP standards or other IEEEstandards. In addition, methods and subject matter disclosed herein maybe applied to devices and networks configured to operate according toevolutions of IEEE 802.11 standards, 3GPP standards or other IEEEstandards.

Referring to FIG. 2, an example of a system 200 that may supportembodiments disclosed herein is shown, which includes several mobiledevices 205, 210, and 215, some of which are in communication with eachother or with an access point 220. The mobile devices 205, 210, 215 maybe examples of the user station 100 shown in FIG. 1, and are renumberedin FIG. 2 for clarity in the discussion below. The communication links230 and 240 between devices 205, 210, 215 may be “device-to-device”links, which may take place with or without the involvement or presenceof a network or controlling node. In addition, the number of devices205, 210, 215 and access points 220 and the number and type ofcommunication links supportable by and between them are not limited tothe number shown in FIG. 2. The communication links 230, 240 may takeplace using any suitable wireless protocol, and may be performed inlicensed or unlicensed spectrum, which may or may not be contiguous infrequency.

An issue that is addressed in embodiments disclosed herein is theselection of a duplex mode for a service operating at a mobile device oraccess point such as 205, 210, 215 or 220, an issue that is especiallyinteresting for the system 200 (or other such systems), in which a newservice is to be established over the link 240 between the mobiledevices 205 and 210. The link 240 is demarcated with a thick line toindicate that it is in the process of being established orre-established, and that its duplex mode needs to be selected. The otherlinks 230 between other devices are indicated with dotted lines, and areassumed in this example as already established and operational. Itshould be noted that the double arrow associated with each link 230, 240indicates that it is bi-directional. Discussion below will be from theperspective of the mobile device 205 establishing the link 240, forpurpose of simplicity only.

Several duplex modes are available to support the bi-directional link240, including TDD or FDD, techniques well known in the art. Inaddition, a technique referred to as “full-duplex” has recently receivedconsiderable attention as a duplex mode option, due to its potentialbenefits in both latency and data rate. It should be pointed out thatthe term “full-duplex” as used herein refers to a duplex mode employedat the device 205 in which one or more antennas at the device 205transmit data-bearing wireless signals while one or more differentantennas at the device 205 receive data-bearing wireless signals, withthe transmission and reception performed in the same frequency spectrumduring the same time period. In contrast, TDD refers to a duplex mode inwhich transmission and reception are performed in the same frequencyspectrum, but during different non-overlapping time periods. FDD refersto a duplex mode in which transmission and reception are performedduring the same time period, but in different non-overlapping frequencyspectra.

While all of these duplex modes (or additional ones not mentionedherein) may be employed to enable bi-directional communication over alink such as 230 or 240, there are performance and resource trade-offsto consider when a selection of duplex mode is made, as known in theart. An exhaustive discussion of those trade-offs will not be presentedherein, but it is worth mentioning that full-duplex may be of particularinterest for situations that require low latency or high data rates. Incomparison to TDD, for example, the fact that transmission and receptioncan be performed essentially at the same time in full-duplex mode mayenable the mobile device 205 to transmit a response to a received blockof data much more quickly in full-duplex mode than in TDD mode, thusreducing latency. In addition, full-duplex mode enables both thetransmit and receive sides to utilize the frequency spectrum for anentire time period while TDD operation can only allow transmission (orreception) during a portion of the time period. Accordingly, full-duplexprovides increased data rates in comparison to TDD, which can alsoprovide a further improvement in latency compared to TDD, as therequired time to send a block of data of a particular size is lower.

The required latency associated with a service may be the maximumallowable time period that can elapse between a transmission of datafrom the mobile device 205 and the decoding of a response to thetransmission from another device. However, the term “latency” may alsorefer to any other suitably defined quantity related to delay, as knownin the art. The actual latency of the service may depend on severalfactors, including, but not limited to, the communication channel,traffic congestion, priority of the service, and the duplex mode. It ispossible that when the actual latency is greater than the requiredlatency, the functionality of the service may be degraded or evenimpossible. As an example, a service that requires a round trip delaybelow a cutoff value of five milliseconds may be considered“low-latency.”

A required data rate for the service may be a minimum data rate thatneeds to be received at or transmitted from the mobile device 205 inorder for the service to function at a desired level of performance.Accordingly, the service may have required data rates for both receiveand transmit sides, which may be different or the same. In cases inwhich the two rates are the same, the service may only specify arequired data rate with the understanding that it applies to bothreceive and transmit sides. As disclosed herein, it is understood that arequired data rate, a data rate threshold or the like may refer toreceived data or transmitted data or both together. As an example, acutoff value of 100 Mbits/sec may be used such that services requiring adata rate higher than that value are considered high data rate.

Although full-duplex may provide latency or data rate advantages overTDD or FDD, it also may bring challenges and detrimental effects to thesystem 200 and to the mobile device 205 employing it. One such issue isthat various types of self-calibration processes at the mobile device205 may be necessary in order to employ full-duplex for the service, andthose processes generally require overhead. An example of aself-calibration process that may be required is the cancellation ormitigation of self interference in the transmitter and receiver chain.Due to the fact that the mobile device 205 transmits on the samefrequency on which it receives, there may be a large amount ofself-interference from the transmit antenna(s) that feeds back into thereceive antenna(s), which can be alleviated using self-interferencecalibration methods, as known in the art. In some embodiments, thetransmission of actual data is paused in order to transmit knowntraining data in TDD mode for a time period, during which a measurementor estimation of the feedback channel can be determined. In any case,the amount of overhead required for self-calibration of the device 205will be referred to herein as the “calibration overhead.”

With respect to selecting the duplex mode for the service, the actual(or estimated) calibration overhead may be determined in any suitablemanner. As a non-limiting example, during a self-calibration process,the required time or amount of training data required may give anindication to the required calibration overhead. This quantity may becompared, in some embodiments, with a calibration overhead threshold,which may be determined as part of a system design or may be specifiedas part of the service. The calibration overhead threshold may be apercentage or length of time during which the calibration may need to beperformed or any other suitable quantity. As an example, a calibrationoverhead threshold of 10% may be used, and values above that range maybe considered excessive.

Another issue associated with the use of full-duplex is interferencethat may be caused to neighboring devices. As an example, in the system200, the mobile device 205 transmitting to the mobile device 210 infull-duplex mode over the link 240 may cause unwanted interference tothe mobile device 215 or the access point 220. The level of interferenceassociated with full-duplex may be excessive in comparison to the levelcaused by the use of TDD or FDD, and must be taken into account whenselecting the duplex mode. The full-duplex interference level mayinclude or be based on any suitable information, including a power leveltransmitted by the mobile device 205 or a frequency range or time periodover which significant interference is generated. In some embodiments,the full-duplex interference level may be determined such that itcharacterizes how much a full-duplex connection can interfere withneighboring devices or access points such as 215 or 220. As part of asystem design, a corresponding threshold may be determined such that afull-duplex interference level above that threshold is consideredexcessive. It should also be pointed out that the mobile device 205itself may have multiple communication sessions operating which couldalso be negatively affected by the use of full-duplex in one of thosesessions.

An additional issue associated with the use of full-duplex at the mobiledevice 205 is the possibility of negatively affecting the battery lifeof the device 205. Due to the simultaneous transmission and reception ofsignals on the same frequency spectrum or other configurations orassociated challenges, the use of full-duplex may be more taxing on thebattery than would the use of other duplex modes. Accordingly, a batterylevel of the mobile device 205 may need to be monitored, and the use offull-duplex may be employed, in some embodiments, only when the batterylevel is above a predetermined battery level threshold. Such a thresholdmay be determined as part of a system design or hardware analysis.

Another consideration related to the use of full-duplex at the mobiledevice 205 is the ability of the device 205 to realize a necessary levelof performance (such as packet error rate and data throughput) while infull-duplex mode. This may be especially challenging in the presence ofinterference, particularly full-duplex interference from neighboringdevices. As an example, the mobile device 205, while communicating infull-duplex mode over the link 240, may experience interference causedby the mobile device 215 or the access point 220. As such, the mobiledevice 205 may request that the mobile device 215 lower or monitor itstransmit power, or may request that the mobile device 215 not utilizefull-duplex in its own communication links 230. Such a request may bemade directly to the other mobile device 215, to the access point 220for announcement to the system 200, or in any other suitable manner.

Referring to FIG. 3, a method 300 of selecting a duplex mode for aservice at an IEEE 802.11 Station (STA) is shown. It is important tonote that embodiments of the method 300 may include additional or evenfewer operations or processes in comparison to what is illustrated inFIG. 3. In addition, embodiments of the method 300 are not necessarilylimited to the chronological order that is shown in FIG. 3. Indescribing the method 300, reference may be made to FIGS. 1-2 and 4,although it is understood that the method 300 may be practiced with anyother suitable systems, interfaces and components. In addition, whilethe method 300 and other methods described herein (including the method400 to be presented later) may refer to STA's operating in accordancewith IEEE 802.11, embodiments of those methods are not limited to justthose STA's and may also be practiced on other mobile devices. Moreover,the method 300 and other methods described herein may be practiced bywireless devices configured to operate in other suitable types ofwireless communication systems, including systems configured to operateaccording to 3GPP or various IEEE standards.

At operation 305 of the method 300, one or more traffic packets relatedto the establishment or re-establishment of the service may be received.Latency and data rate requirements for the service may be determined atoperations 310 and 315, while a calibration overhead associated with theservice or the STA may be determined at operation 320.

As previously described, a service operating at the STA may becharacterized by requirements for parameters such as latency and datarate. Accordingly, the required latency may be determined in anysuitable manner, including the use of the traffic packets received atoperation 305. In some embodiments, the traffic packets may include therequired latency explicitly as part of a bit field or similar within thetraffic packets. In other embodiments, those traffic packets may includeinformation, such as other parameters related to the service that mayenable the required latency to be determined indirectly. As an example,a service type included in the traffic packets may be used as an indexinto a predetermined table containing approximate latencies fordifferent service types, with the table stored on the STA. It should benoted that the value of the required latency may be specified in anysuitable units, including seconds, milliseconds, microseconds or numberof frames.

The required data rate may be determined in any suitable manner,including through the use of the traffic packets or any of thetechniques previously described for determining required latency,including the use of a table containing data rates related to differentservice types. The required data rate may be specified in units such asbits/sec, Mbits/sec, Gbits/sec or any other suitable manner. Thecalibration overhead may also be determined in any suitable manner. As anon-limiting example, during a self-calibration process, the requiredtime or amount of training data required may give an indication to therequired calibration overhead.

It should be noted that the determinations performed in operations 310,315, and 320 related to latency, data rate, and overhead may beperformed sequentially, jointly or in any combination thereof, and maybe performed in any order. As a non-limiting example, the requiredlatency and data rate may be determined jointly when both quantities areexplicitly included in the traffic packets, and the calibration overheadmay be determined separately.

Referring back to the method 300 shown in FIG. 3, full-duplex may bechosen as the duplex mode at operation 325. Alternatively, TDD or FDDmay be chosen as the duplex mode at operation 330. It should bementioned again that some embodiments of the method 300 may not includeall the operations shown in FIG. 3. For example, some embodiments mayinclude either operation 325 or 330, but not both.

As previously described, the use of full-duplex may offer advantagesover TDD or FDD in terms of latency and/or data rate, but may alsointroduce issues such as overhead, interference to neighboring devices,and negative impact on the battery level of the STA. The selection offull-duplex, TDD or FDD as the duplex mode may be based on one or moreof these factors, and may be performed according to any number ofembodiments.

Before the remaining operations of the method 300 are described, anon-limiting example of one such embodiment shown in FIG. 4 will bepresented. It should be pointed out that similar embodiments may includesome or all of the same operations shown in FIG. 4 or may utilizedifferent control logic or a different flow than the method shown inFIG. 4. Throughout the description below related to the operations shownin FIG. 4, the delay, data rate, and calibration overhead thresholds maybe predetermined as part of a system design or hardware analysis. Whilethe example values of five milliseconds, 100 Mbits/sec, and 10%previously described for those thresholds may be used, the techniquesdescribed are not limited to those values, and any suitable values maybe used.

At operation 405, one or more traffic packets can be received at theSTA, and the packets may include information related to theestablishment or re-establishment of a service. At operation 410, adelay requirement associated with the service may be compared to apredetermined delay threshold to determine if the service islow-latency, i.e. the delay requirement is less than the threshold. Ifso, the selection of full-duplex is desired for this low-latencyservice. However, the method first proceeds to operation 420 to check ifthe required calibration overhead for full-duplex is reasonable or not,which will be described shortly.

Returning to operation 410, if the delay requirement is not lower thanthe delay threshold, the service is not considered low-latency. Themethod then proceeds to operation 415, at which a required data rate ofthe service is compared with a data rate threshold. If the required datarate is not less than the data rate threshold, the service is consideredhigh data rate, full-duplex mode is desired, and the method proceeds tooperation 420 for the check related to calibration overhead. But if therequired data rate is less than the data rate threshold, the methodproceeds to operation 430, at which TDD or FDD is selected as the duplexmode. As a summary of this particular case, when the delay requirementis not less than the delay threshold and the data rate requirement isless than the data rate threshold, TDD or FDD is selected as the duplexmode. That is, when the service is neither low-latency nor high datarate, TDD or FDD may be considered sufficient.

Now operation 420 will be described, at which the required calibrationoverhead associated with full-duplex is compared to a calibrationoverhead threshold to determine if selection of full-duplex isreasonable. At this point, it should be noted that the service is eitherlow-latency, high data rate, or both, and it is desired to selectfull-duplex as the duplex mode. In other words, the delay requirement isless than the delay threshold, the data rate requirement is not lessthan the data rate threshold, or both. If the calibration overhead isless than the calibration overhead threshold at operation 420, the useof full-duplex is considered reasonable and the method proceeds tooperation 425, at which full-duplex is selected as the duplex mode.However, if the calibration overhead is too high (calibration overheadnot less than the associated threshold), the method proceeds tooperation 430, at which TDD or FDD is selected as the duplex mode.

It should be pointed out that in this embodiment and others describedherein, comparison operations have generally resulted in two cases, lessthan or not less than (greater than or equal to). However, this has beendone here only for simplicity of explanation and is not limiting. Assuch, comparison operations of these and other embodiments may utilizeany suitable cases, including less than, not less than, equal to,greater than or not greater than.

Returning to the method 300 shown in FIG. 3, at operation 335, afull-duplex interference level associated with the service or the STAmay be determined. A battery level associated with the STA may bedetermined at operation 340, and a full-duplex usage level associatedwith neighboring devices or the STA may be determined at operation 345.At operation 350, the selection of full-duplex as the duplex mode may beoverridden and TDD or FDD may be selected as the duplex mode.

It should be noted that the operations 335-345 may serve as checksrelated to the service or the STA with the possible result of overridingthe full-duplex selection at operation 350, but may also be performedfor any other suitable purpose. As an example, values of the full-duplexusage level may be stored over a window of time to characterize orcollect statistics on how often neighboring devices operate servicesthat may require full-duplex. The operations 335-345 may be performed,in some embodiments, only in response to the selection of full-duplex asthe duplex mode. However, in some embodiments, any or all of thoseoperations may be performed before the duplex mode is selected (atoperations 325 or 330), and may be utilized as part of that selectionprocess. In addition, any or all of the operations 335-345 may beperformed regardless of the duplex mode selection.

As previously described, a battery level associated with the STA, suchas the remaining energy in the battery, may be determined in order todecide if the selection of full-duplex mode should be performed oroverridden. If the battery level is below a predetermined battery levelthreshold, it may be appropriate to use TDD or FDD instead offull-duplex for the service, and one of those modes may be selected.

A full-duplex interference level associated with the service or the STAmay also be determined. As previously described, the interference levelmay include information about interference levels that may be caused bya full-duplex link at the STA to other devices operating in closeproximity to, or at least within range of, the STA. If it is determinedthat the use of full-duplex mode at the STA may cause an unreasonableamount of interference to any of those other devices or other sessionsoperating at the STA (i.e. the full-duplex interference level is notless than a predetermined full-duplex interference threshold), TDD orFDD may be selected as the duplex mode or the selection of full-duplexmode for the service may be overridden.

A full-duplex usage level associated with neighboring devices or the STAmay also be determined and used as part of the decision to selectfull-duplex or to override such a selection. In some cases, particularlythose in which the STA has multiple communication sessions in operationor multiple other devices are operating in close proximity, it may bebeneficial that the STA and the other devices communicate between eachother, or to an AP or other controlling node or device, about their ownusage of full-duplex. The communication may be related to currentconnections or sessions employing full-duplex or related to planned orpossible future connections that may be low-latency or high data rate.The full-duplex usage level and a related full-duplex usage thresholdmay reflect this information in any suitable manner, such as the numberof full-duplex connections currently active, or whether that number issignificant or not.

Accordingly, the full-duplex usage level may be compared to thefull-duplex usage threshold to decide if the selection of full-duplexmode for the service should be performed or overridden. That is, if manydevices in close proximity to the STA are planning to use, or may use,full-duplex, the STA may choose to override its own use of full-duplexin the best interest of those other devices. In particular, when thedevices are all part of the same system, such cooperation may be easierto facilitate.

It should be noted that in these embodiments and others, the overridingof full-duplex may occur before, during or after its selection or use.As an example, the battery level may be above the threshold when thefull-duplex mode is first used, and may fall over time to a level belowthe threshold. In response to the level falling below the threshold, theuse of full-duplex may be overridden. As another example, thefull-duplex interference level or full-duplex usage level may startbelow their respective thresholds when full-duplex is first used, andincrease over time. In those cases, the STA is providing moreinterference to other devices or there are more full-duplex connectionson those devices, and the STA may choose to discontinue full-duplexoperation in the best interest of those devices.

It should be further noted that the overriding of full-duplex mode isnot limited to occurring just in response to, or as a result of, theabove checks (operations 335-345). In some embodiments, overriding offull-duplex mode may occur in response to any appropriate checks, eventsor results, which may also include any or all of the checks inoperations 335-345. In some embodiments, overriding of full-duplex modemay be performed for any reason, and may not be in response to anycheck, event or result like mentioned above.

Returning once again to the method 300 shown in FIG. 3, at operation 355a message related to the selection of the duplex mode may be transmittedfrom the STA. The message may be receivable by other STA's or by 802.11access points (AP) and may announce the selection of full-duplex for oneor more services operating at the STA. In some embodiments, the messagemay include other information, such as information that may haveresulted from comparisons or determinations previously described. Forexample, the full-duplex interference level may provide usefulinformation to those other STA's or AP's. As another example, themessage may include the frequency ranges over which the full-duplexinterference may occur.

In addition, the message may include requests to the other STA's orAP's. As previously mentioned, the successful operation of full-duplexmay be challenging in some cases, such as when there is a significantamount of self interference. In those cases, interference from otherdevices that reaches the STA may actually degrade the performance of theservice while in full-duplex mode, perhaps to the point that it cannotfunction. In some embodiments, therefore, the message transmitted fromthe STA may include one or more requests to other devices (STA's orAP's) to reduce or monitor their transmit power. Such a feature may beof particular interest in a system in which several STA's and AP's areworking cooperatively. The devices in such a system may be configured torespect the needs of other devices to sometimes employ full-duplex for aservice that requires it.

A mobile device is disclosed herein. The mobile device may be configuredto operate in an IEEE 802.11 or 3GPP network or in an evolution of anIEEE 802.11 or 3GPP network. The mobile device may be further configuredto operate in accordance with a duplex mode. The mobile device maycomprise hardware processing circuitry configured to receive one or moretraffic packets related to an establishment or a re-establishment of aservice at the mobile device. The hardware processing circuitry may befurther configured to, when a delay requirement associated with theservice is less than a predetermined delay threshold, select full-duplexas the duplex mode when a calibration overhead associated with themobile device or the service is less than a predetermined calibrationoverhead threshold and select time-division duplex (TDD) orfrequency-division duplex (FDD) as the duplex mode when the calibrationoverhead is not less than the calibration overhead threshold. Thehardware processing circuitry may be further configured to, when thedelay requirement is not less than the delay threshold and a data raterequirement associated with the service is less than a predetermineddata rate threshold, select TDD or FDD as the duplex mode. The hardwareprocessing circuitry may be further configured to, when the delayrequirement is not less than the delay threshold and the data raterequirement is not less than the data rate threshold, select full-duplexas the duplex mode when the calibration overhead is less than thecalibration overhead threshold and select TDD or FDD as the duplex modewhen the calibration overhead is not less than the calibration overheadthreshold.

The hardware processing circuitry may be further configured to, inresponse to any of the selections of full-duplex as the duplex mode,override the selection of full-duplex as the duplex mode and select TDDor FDD as the duplex mode when a full-duplex interference levelassociated with the mobile device or the service is not less than apredetermined full-duplex interference threshold. The hardwareprocessing circuitry may be further configured to, in response to any ofthe selections of full-duplex as the duplex mode, override the selectionof full-duplex as the duplex mode and select TDD or FDD as the duplexmode when a battery level associated with the mobile device is less thana predetermined battery level threshold. The hardware processingcircuitry may be further configured to, in response to any of theselections of full-duplex as the duplex mode, override the selection offull-duplex as the duplex mode and select TDD or FDD as the duplex modewhen a full-duplex usage level associated with the mobile device orother mobile devices is less than a predetermined full-duplex usagethreshold. The hardware processing circuitry may be further configuredto transmit, in response to the selection of full-duplex as the duplexmode, a message that is receivable by other mobile devices or basestations and that comprises information related to the selection offull-duplex as the duplex mode or a request that at least one of theother mobile devices or base stations reduce or monitor its transmitpower.

In some embodiments of the mobile device, the delay requirement and thedata rate requirement may be at least partially determined from thetraffic packets. In some embodiments of the mobile device, the delayrequirement and delay threshold may refer to round-trip delays and thedelay threshold may be five milliseconds or less.

A method of selecting a duplex mode for a service operating on a mobiledevice configured to operate in an IEEE 802.11 or 3GPP network or in anevolution of an IEEE 802.11 or 3GPP network is also disclosed herein.The method may include receiving one or more traffic packets related toan establishment or a re-establishment of the service at the mobiledevice. The method may also include selecting a duplex mode for theservice. As part of selecting the duplex mode, when a delay requirementassociated with the service is less than a predetermined delaythreshold, the mobile device may be configured to select full-duplex asthe duplex mode when a calibration overhead associated with the mobiledevice or the service is less than a predetermined calibration overheadthreshold and to select time-division duplex (TDD) or frequency-divisionduplex (FDD) as the duplex mode when the calibration overhead is notless than the calibration overhead threshold. As part of selecting theduplex mode, when the delay requirement is not less than the delaythreshold and a data rate requirement associated with the service isless than a predetermined data rate threshold, the mobile device may beconfigured to select TDD or FDD as the duplex mode. As part of selectingthe duplex mode, when the delay requirement is not less than the delaythreshold and the data rate requirement is not less than the data ratethreshold, the mobile device may be configured to select full-duplex asthe duplex mode when the calibration overhead is less than thecalibration overhead threshold and to select TDD or FDD as the duplexmode when the calibration overhead is not less than the calibrationoverhead threshold.

The method may also include, in response to any of the selections offull-duplex as the duplex mode, overriding the selection of full-duplexas the duplex mode and selecting TDD or FDD as the duplex mode when afull-duplex interference level associated with the mobile device or theservice is not less than a predetermined full-duplex interferencethreshold. The method may also include, in response to any of theselections of full-duplex as the duplex mode, overriding the selectionof full-duplex as the duplex mode and selecting TDD or FDD as the duplexmode when a battery level associated with the mobile device is less thana predetermined battery level threshold. The method may also include, inresponse to any of the selections of full-duplex as the duplex mode,overriding the selection of full-duplex as the duplex mode and selectingTDD or FDD as the duplex mode when a full-duplex usage level associatedwith the mobile device or other mobile devices is less than apredetermined full-duplex usage threshold.

The method may also include transmitting, in response to the selectionof full-duplex as the duplex mode, a message that is receivable by othermobile devices or base stations and that comprises information relatedto the selection of full-duplex as the duplex mode or a request that atleast one of the other mobile devices or base stations reduce or monitorits transmit power. In some embodiments, the delay requirement and thedata rate requirement may be at least partially determined from thetraffic packets. In some embodiments, the delay requirement and delaythreshold may refer to round-trip delays and the delay threshold may befive milliseconds or less.

A non-transitory computer-readable storage medium that may storeinstructions for execution by one or more processors to performoperations is also disclosed herein. The operations may includereceiving one or more traffic packets related to an establishment or are-establishment of a service at a mobile device configured to operatein an IEEE 802.11 or 3GPP network or in an evolution of an IEEE 802.11or 3GPP network. The operations may also include selecting a duplex modefor the service. Selecting the duplex mode may include, when a delayrequirement associated with the service is less than a predetermineddelay threshold, selecting full-duplex as the duplex mode when acalibration overhead associated with the mobile device or the service isless than a predetermined calibration overhead threshold and selectingtime-division duplex (TDD) or frequency-division duplex (FDD) as theduplex mode when the calibration overhead is not less than thecalibration overhead threshold. Selecting the duplex mode may alsoinclude selecting TDD or FDD as the duplex mode when the delayrequirement is not less than the delay threshold and a data raterequirement associated with the service is less than a predetermineddata rate threshold. Selecting the duplex mode may also include, whenthe delay requirement is not less than the delay threshold and the datarate requirement is not less than the data rate threshold, selectingfull-duplex as the duplex mode when the calibration overhead is lessthan the calibration overhead threshold and selecting TDD or FDD as theduplex mode when the calibration overhead is not less than thecalibration overhead threshold.

The operations may also include, in response to any of the selections offull-duplex as the duplex mode, overriding the selection of full-duplexas the duplex mode and selecting TDD or FDD as the duplex mode when afull-duplex interference level associated with the mobile device or theservice is not less than a predetermined full-duplex interferencethreshold. The operations may also include, in response to any of theselections of full-duplex as the duplex mode, overriding the selectionof full-duplex as the duplex mode and selecting TDD or FDD as the duplexmode when a battery level associated with the mobile device is less thana predetermined battery level threshold. The operations may alsoinclude, in response to any of the selections of full-duplex as theduplex mode, overriding the selection of full-duplex as the duplex modeand selecting TDD or FDD as the duplex mode when a full-duplex usagelevel associated with the mobile device or other mobile devices is lessthan a predetermined full-duplex usage threshold.

The operations may also include transmitting, in response to theselection of full-duplex as the duplex mode, a message that isreceivable by other mobile devices or base stations and that comprisesinformation related to the selection of full-duplex as the duplex modeor a request that at least one of the other mobile devices or basestations reduce or monitor its transmit power. In some embodiments, thedelay requirement and the data rate requirement may be at leastpartially determined from the traffic packets. In some embodiments, thedelay requirement and delay threshold may refer to round-trip delays andthe delay threshold may be five milliseconds or less.

The Abstract is provided to comply with 37 C.F.R. Section 1.72(b)requiring an abstract that will allow the reader to ascertain the natureand gist of the technical disclosure. It is submitted with theunderstanding that it will not be used to limit or interpret the scopeor meaning of the claims. The following claims are hereby incorporatedinto the detailed description, with each claim standing on its own as aseparate embodiment.

What is claimed is:
 1. A mobile device configured to operate inaccordance with a duplex mode, the mobile device comprising hardwareprocessing circuitry configured to: receive one or more traffic packetsrelated to an establishment or a re-establishment of a service at themobile device; and when a delay requirement associated with the serviceis less than a predetermined delay threshold: select full-duplex as theduplex mode when a calibration overhead associated with the mobiledevice or the service is less than a predetermined calibration overheadthreshold; and select time-division duplex (TDD) or frequency-divisionduplex (FDD) as the duplex mode when the calibration overhead is notless than the calibration overhead threshold.
 2. The mobile deviceaccording to claim 1, the hardware processing circuitry furtherconfigured to, when the delay requirement is not less than the delaythreshold and a data rate requirement associated with the service isless than a predetermined data rate threshold, select TDD or FDD as theduplex mode.
 3. The mobile device according to claim 2, the hardwareprocessing circuitry further configured to, when the delay requirementis not less than the delay threshold and the data rate requirement isnot less than the data rate threshold: select full-duplex as the duplexmode when the calibration overhead is less than the calibration overheadthreshold; and select TDD or FDD as the duplex mode when the calibrationoverhead is not less than the calibration overhead threshold.
 4. Themobile device according to claim 3, the hardware processing circuitryfurther configured to, in response to any of the selections offull-duplex as the duplex mode, override the selection of full-duplex asthe duplex mode and select TDD or FDD as the duplex mode when afull-duplex interference level associated with the mobile device or theservice is not less than a predetermined full-duplex interferencethreshold.
 5. The mobile device according to claim 3, the hardwareprocessing circuitry further configured to, in response to any of theselections of full-duplex as the duplex mode, override the selection offull-duplex as the duplex mode and select TDD or FDD as the duplex modewhen a battery level associated with the mobile device is less than apredetermined battery level threshold.
 6. The mobile device according toclaim 3, the hardware processing circuitry further configured to, inresponse to any of the selections of full-duplex as the duplex mode,override the selection of full-duplex as the duplex mode and select TDDor FDD as the duplex mode when a full-duplex usage level associated withthe mobile device or other mobile devices is less than a predeterminedfull-duplex usage threshold.
 7. The mobile device according to claim 3,the hardware processing circuitry further configured to transmit, inresponse to the selection of full-duplex as the duplex mode, a messagethat is receivable by other mobile devices or base stations and thatcomprises information related to the selection of full-duplex as theduplex mode or a request that at least one of the other mobile devicesor base stations reduce or monitor its transmit power.
 8. The mobiledevice according to claim 3, wherein the delay requirement and the datarate requirement are at least partially determined from the trafficpackets, and wherein the mobile device is configured to operate in anIEEE 802.11 or 3GPP network or in an evolution of an IEEE 802.11 or 3GPPnetwork.
 9. The mobile device according to claim 1, wherein the delayrequirement and delay threshold refer to round-trip delays and the delaythreshold is five milliseconds or less.
 10. A method of selecting aduplex mode for a service operating on a mobile device comprising:receiving one or more traffic packets related to an establishment or are-establishment of the service at the mobile device; and selecting aduplex mode for the service; wherein when a delay requirement associatedwith the service is less than a predetermined delay threshold, themobile device is configured to: select full-duplex as the duplex modewhen a calibration overhead associated with the mobile device or theservice is less than a predetermined calibration overhead threshold; andselect time-division duplex (TDD) or frequency-division duplex (FDD) asthe duplex mode when the calibration overhead is not less than thecalibration overhead threshold.
 11. The method according to claim 10,wherein when the delay requirement is not less than the delay thresholdand a data rate requirement associated with the service is less than apredetermined data rate threshold, the mobile device is configured toselect TDD or FDD as the duplex mode.
 12. The method according to claim11, wherein when the delay requirement is not less than the delaythreshold and the data rate requirement is not less than the data ratethreshold, the mobile device is configured to: select full-duplex as theduplex mode when the calibration overhead is less than the calibrationoverhead threshold; and select TDD or FDD as the duplex mode when thecalibration overhead is not less than the calibration overheadthreshold.
 13. The method according to claim 12, further comprising, inresponse to any of the selections of full-duplex as the duplex mode,overriding the selection of full-duplex as the duplex mode and selectingTDD or FDD as the duplex mode when a full-duplex interference levelassociated with the mobile device or the service is not less than apredetermined full-duplex interference threshold.
 14. The methodaccording to claim 12, further comprising, in response to any of theselections of full-duplex as the duplex mode, overriding the selectionof full-duplex as the duplex mode and selecting TDD or FDD as the duplexmode when a battery level associated with the mobile device is less thana predetermined battery level threshold.
 15. The method according toclaim 12, further comprising, in response to any of the selections offull-duplex as the duplex mode, overriding the selection of full-duplexas the duplex mode and selecting TDD or FDD as the duplex mode when afull-duplex usage level associated with the mobile device or othermobile devices is less than a predetermined full-duplex usage threshold.16. The method according to claim 12, further comprising transmitting,in response to the selection of full-duplex as the duplex mode, amessage that is receivable by other mobile devices or base stations andthat comprises information related to the selection of full-duplex asthe duplex mode or a request that at least one of the other mobiledevices or base stations reduce or monitor its transmit power.
 17. Themethod according to claim 12, wherein the delay requirement and the datarate requirement are at least partially determined from the trafficpackets.
 18. The method according to claim 12, wherein the delayrequirement and delay threshold refer to round-trip delays and the delaythreshold is five milliseconds or less.
 19. The method of claim 12wherein the mobile device is configured to operate in an IEEE 802.11 or3GPP network or in an evolution of an IEEE 802.11 or 3GPP network.
 20. Anon-transitory computer-readable storage medium that stores instructionsfor execution by one or more processors to perform operationscomprising: receiving one or more traffic packets related to anestablishment or a re-establishment of a service at a mobile device; andselecting a duplex mode for the service; wherein selecting the duplexmode comprises, when a delay requirement associated with the service isless than a predetermined delay threshold: selecting full-duplex as theduplex mode when a calibration overhead associated with the mobiledevice or the service is less than a predetermined calibration overheadthreshold; and selecting time-division duplex (TDD) orfrequency-division duplex (FDD) as the duplex mode when the calibrationoverhead is not less than the calibration overhead threshold.
 21. Thenon-transitory computer-readable storage medium according to claim 20,wherein selecting the duplex mode further comprises selecting TDD or FDDas the duplex mode when the delay requirement is not less than the delaythreshold and a data rate requirement associated with the service isless than a predetermined data rate threshold.
 22. The non-transitorycomputer-readable storage medium according to claim 21, whereinselecting the duplex mode further comprises: when the delay requirementis not less than the delay threshold and the data rate requirement isnot less than the data rate threshold: selecting full-duplex as theduplex mode when the calibration overhead is less than the calibrationoverhead threshold; and selecting TDD or FDD as the duplex mode when thecalibration overhead is not less than the calibration overheadthreshold.
 23. The non-transitory computer-readable storage mediumaccording to claim 22, the operations further comprising, in response toany of the selections of full-duplex as the duplex mode, overriding theselection of full-duplex as the duplex mode and selecting TDD or FDD asthe duplex mode when a full-duplex interference level associated withthe mobile device or the service is not less than a predeterminedfull-duplex interference threshold.
 24. The non-transitorycomputer-readable storage medium according to claim 22, the operationsfurther comprising, in response to any of the selections of full-duplexas the duplex mode, overriding the selection of full-duplex as theduplex mode and selecting TDD or FDD as the duplex mode when a batterylevel associated with the mobile device is less than a predeterminedbattery level threshold, and wherein the mobile device is configured tooperate in an IEEE 802.11 or 3GPP network or in an evolution of an IEEE802.11 or 3GPP network.
 25. The non-transitory computer-readable storagemedium according to claim 22, the operations further comprising, inresponse to any of the selections of full-duplex as the duplex mode,overriding the selection of full-duplex as the duplex mode and selectingTDD or FDD as the duplex mode when a full-duplex usage level associatedwith the mobile device or other mobile devices is less than apredetermined full-duplex usage threshold.
 26. The non-transitorycomputer-readable storage medium according to claim 22, the operationsfurther comprising transmitting, in response to the selection offull-duplex as the duplex mode, a message that is receivable by othermobile devices or base stations and that comprises information relatedto the selection of full-duplex as the duplex mode or a request that atleast one of the other mobile devices or base stations reduce or monitorits transmit power.
 27. The non-transitory computer-readable storagemedium according to claim 22, wherein the delay requirement and the datarate requirement are at least partially determined from the trafficpackets.
 28. The non-transitory computer-readable storage mediumaccording to claim 22, wherein the delay requirement and delay thresholdrefer to round-trip delays and the delay threshold is five millisecondsor less.